package org.zk.dubbo_provider.dao;


import com.github.pagehelper.PageInfo;
import org.zk.entity.Course;

import java.util.List;
import java.util.Map;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author Alicelonely
 * @since 2019-12-11
 */
public interface CourseMapper   {
    //添加课程
    int addCourse(Course course);

    //课程详情页
    Course queryCourse(int courseId);

    //修改course表的评价数
    int updateCourse(Course course);

   /* //高申 2019-12-16 查看所有
    List<Course> queryAllCourse();*/

    //高申 2019-12-16 根据id查看课程
    Course queryOneCourse(int courseId);

    //高申 2019-12-17 支付成功，课程销量+1
    void updateCourseCount(Course course);


    //查询单个教师发布的课程数量
    int getCourseCountByTid(Map map);

    //查询一个老师的所有课程
    List<Course> queryCourseByTid(Map<String, Object> map);

    //查询单个教师发布的最新的一个courseId
    Course queryCourseIdByTid(int teacherId);

    //分页查询所有课程
    List<Course> getAllList(Map<String,Object> map);

    //查询课程表中course的数量
    int queryCourseCount(Map<String,Object> map);

    //course审核
    int updateFlag(Course course);

   List<Course> getAllCoursePages(Map map);

    List<Course> getCourseBySid(int id);



    //分条件查询单个教师发布的课程
    List<Course> getCourseByTidAndFlag(Map<String,Object> map);

    //删除单个章节
    int delCourseById(int courseId);

    //根据typeId查询所有的课程
    List<Course> getCourseByTypeId(Map map);
    /**
     * @MethodName: getAllCourseList
     * @Description: 综合查询所有视频课程
     * @Param: [map]
     * @Return: java.util.List<org.zk.entity.Course>
     * @Author: 刘艺广
     * @Time: 2020/1/7 0007 上午 11:39
     **/
    List<Course> getAllCourseList(Map map);

    /**
     * 综合查询所有课程的数量
     * @param map
     * @return
     */
    int getAllCourseListCount(Map map);

}
